Release 10.1A: OpenEdge Development:
Progress Dynamics Administration


Thin SmartObject rendering

SmartObject rendering and initialization are expensive. Running SmartObject instances involves method library include files, prototype include files, property include files, extended class include files and logic to set various properties based on static preprocessor values. The existence of this code adds to the size of the compiled r-code and to the cost of execution.

Thin versions of various Progress SmartObjects™ exist that contain less r-code than their full counterparts. The thin versions exclude logic from their compilations that are not required for most dynamic objects, such as prototype and custom include-file inclusion and logic to create ADMProps.

Thin SmartObject rendering procedures exist for the following dynamic objects:

These thin rendering procedures include their dynamic object and rely on preprocessor definitions to optimize the rendering information. There are two preprocessor definitions specific to thin SmartObject rendering:

In addition to defining ADM-EXCLUDE-PROTOTYPES and ADM-EXCLUDE-STATIC, the thin rendering procedures define exclude-start-super-proc to exclude compilation of the start-super-proc internal procedure. Here is an example of a thin rendering procedure:

&GLOBAL-DEFINE ADM-EXCLUDE-PROTOTYPES 
&GLOBAL-DEFINE ADM-EXCLUDE-STATIC 
&SCOPED-DEFINE exclude-start-super-proc 
{adm2/dynsdo.w} 


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095